Skip to main content

Product Attributes

Using Product Attributes

When integrating with the Logistics Plus Warehouse API, product attributes can be utilized to provide additional properties that describe a product, such as batch, serial numbers, and expiry dates. Your representative will provide any configured product attributes in your integration packet. If you need to create additional attributes for your products, please reach out to your Logistics Plus representative who can assist you in setting up the necessary attributes.

Once attributes have been created, you can configure your products to use them. Here's an example of how to create a product with a "SERIAL NUMBER" attribute:

Example Request
POST /warehouse/v1/products HTTP/1.1
x-api-key: your_api_key
organization-slug: your_organization_slug (if required)
Content-Type: application/json

{
"productCode": "APL-IPH-13PRO-256-GRPH",
"productDescription": "iPhone 13 Pro Max 256GB Graphite",
"productUnit": "UNT",
"unitPrice": "1199.99",
"unitPriceCurrency": "USD",
"dimHeight": 6.33,
"dimWidth": 3.07,
"dimDepth": 0.3,
"dimUnit": "IN",
"weightPerProduct": 8.46,
"weightPerProductUnit": "OZ",
"clientProductCode": "885909723200",
"clientProductDescription": "Apple iPhone 13 Pro Max 256GB - Graphite",
"clientProductUnit": "UNT",
"pickMode": "ANE",
"productAttributes": [
{
"key": "SERIAL NUMBER",
"requiredForWarehouseRelease": true,
"requiredForRfConfirmation":false
}
]
}

Replace your_api_key with your actual API key and your_organization_slug with your organization slug, if required.

JSON Elements

Pick Mode

The pickMode for a Product enforces the warehousing team to perform certain actions when confirming and releasing a product. Two values are currently supported via the API.

ValueMeaningDescription
ANEAttribute NeutralThis value is specific for serialized products. If this is being passed, a part attribute containing your organization's serial number attribute key must exist with requiredForWarehouseRelease set to false and requiredForRfConfirmation set to true. This allows the serial number to be captured for a product on an order at the time of picking by the warehousing team instead of sending the exact serial number on the Order to be picked.
ASPAttribute SpecifiedThis value is defaulted (unless specified) to when a product has no part attributes configured. It can be used when any part attribute exists including the serial number. It will allow any one of the part attributes to be marked as requiredForRfConfirmation. This guarantees that the product with this specific attribute value is picked by the warehousing team if its value is passed on an Order.

Key

The key field will be a fixed value provided in your credentials document. For example, "SERIAL NUMBER" may be used to identify products that require serial number management.

Required for Release

The requiredForWarehouseRelease field indicates whether the serial number is required for the product's release. If it is set to false, the serial number must be provided either through the API payload or by the warehouse anytime this SKU is used on a warehouse receive. Additionally, the value will be available in inventory and on any related outbound orders. If it is set to true, the value will not be captured on warehouse receives or available in inventory but will force the warehouse worker to scan/enter the value before the related inventory leaves the warehouse.

Required for RF Confirmation

The requiredForRfConfirmation field allows a product to have a single part attribute that MUST be RF Confirmed in the warehouse. If you have ASP selected, you can RF Confirm on ANY of the enabled attributes but only one. The same rule applies that the RF Confirmed attribute cannot be required for release capture.

Using Custom Fields

Custom fields can now be added to the product in the JSON payload. This new feature allows you to extend the product information without any configurations by the Logistics Plus team. This is designed for the dynamic addition of fields, but please note that updates to these custom fields via the API are not currently supported. These fields will also not be carried through inventory and cannot be verified by the operations team when using RF scanners.

For example:

Example Request
{
"productCode": "LGT-K380-BT-KYBD",
"productDescription": "Logitech K380 Multi-Device Bluetooth Keyboard",
"productUnit": "UNT",
"unitPrice": "39.99",
"unitPriceCurrency": "USD",
"dimHeight": 0.58,
"dimWidth": 10.91,
"dimDepth": 4.93,
"dimUnit": "IN",
"weightPerProduct": 0.9,
"weightPerProductUnit": "LB",
"clientProductCode": "097855114990",
"clientProductDescription": "Logitech K380 Multi-Device Bluetooth Keyboard",
"clientProductUnit": "UNT",
"customFields": [
{
"key": "YOURKEY1",
"value": "YOURVALUE1"
},
{
"key": "YOURKEY2",
"value": "YOURVALUE2"
}
]
}

If the request is successful, the product will be created with the custom fields included in the product information.